package com.ruoyi.system.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 采血信息记录对象 blood_draw_records
 * 
 * @author ruoyi
 * @date 2025-02-08
 */
public class BloodDrawRecords extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 唯一主键ID */
    private Long id;

    /** 患者电话 */
    @Excel(name = "患者电话")
    private String bloodUserPhone;

    /** 患者身份证号 */
    @Excel(name = "患者身份证号")
    private String bloodUserCard;

    /** 采血时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "采血时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date bloodDrawTime;

    /** 采血部位 */
    @Excel(name = "采血部位")
    private String bloodDrawSite;

    /** 采血管类型 */
    @Excel(name = "采血管类型")
    private String tubeType;

    /** 采血量（单位：ml） */
    @Excel(name = "采血量", readConverterExp = "单=位：ml")
    private BigDecimal bloodVolume;

    /** 操作员姓名/工号 */
    @Excel(name = "操作员姓名/工号")
    private String operator;

    /** 记录状态 */
    @Excel(name = "记录状态")
    private String status;

    /** 是否加急（0-否，1-是） */
    @Excel(name = "是否加急", readConverterExp = "0=-否，1-是")
    private Integer isUrgent;

    /** 备注 */
    @Excel(name = "备注")
    private String bloodDrawNote;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setBloodUserPhone(String bloodUserPhone) 
    {
        this.bloodUserPhone = bloodUserPhone;
    }

    public String getBloodUserPhone() 
    {
        return bloodUserPhone;
    }
    public void setBloodUserCard(String bloodUserCard) 
    {
        this.bloodUserCard = bloodUserCard;
    }

    public String getBloodUserCard() 
    {
        return bloodUserCard;
    }
    public void setBloodDrawTime(Date bloodDrawTime) 
    {
        this.bloodDrawTime = bloodDrawTime;
    }

    public Date getBloodDrawTime() 
    {
        return bloodDrawTime;
    }
    public void setBloodDrawSite(String bloodDrawSite) 
    {
        this.bloodDrawSite = bloodDrawSite;
    }

    public String getBloodDrawSite() 
    {
        return bloodDrawSite;
    }
    public void setTubeType(String tubeType) 
    {
        this.tubeType = tubeType;
    }

    public String getTubeType() 
    {
        return tubeType;
    }
    public void setBloodVolume(BigDecimal bloodVolume) 
    {
        this.bloodVolume = bloodVolume;
    }

    public BigDecimal getBloodVolume() 
    {
        return bloodVolume;
    }
    public void setOperator(String operator) 
    {
        this.operator = operator;
    }

    public String getOperator() 
    {
        return operator;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }
    public void setIsUrgent(Integer isUrgent) 
    {
        this.isUrgent = isUrgent;
    }

    public Integer getIsUrgent() 
    {
        return isUrgent;
    }
    public void setBloodDrawNote(String bloodDrawNote) 
    {
        this.bloodDrawNote = bloodDrawNote;
    }

    public String getBloodDrawNote() 
    {
        return bloodDrawNote;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("bloodUserPhone", getBloodUserPhone())
            .append("bloodUserCard", getBloodUserCard())
            .append("bloodDrawTime", getBloodDrawTime())
            .append("bloodDrawSite", getBloodDrawSite())
            .append("tubeType", getTubeType())
            .append("bloodVolume", getBloodVolume())
            .append("operator", getOperator())
            .append("status", getStatus())
            .append("isUrgent", getIsUrgent())
            .append("bloodDrawNote", getBloodDrawNote())
            .append("createTime", getCreateTime())
            .append("updateTime", getUpdateTime())
            .toString();
    }
}
